package sz.szsmk.citizencard.mvp.contract;

import sz.szsmk.citizencard.model.network.bean.response.IbaseBean;
import sz.szsmk.citizencard.model.network.bean.response.UserBean;
import sz.szsmk.citizencard.ui.base.IBaseContact;

/**
 * Copyright (c)2018
 * author: zdh
 * created on: 2018/6/4 10:24
 * description:
 */
public interface ISetPsdContact {

    interface ISetPsdPresenter<T extends IBaseContact.IBaseView>
            extends IBaseContact,IBaseContact.IBasePresenter{

        void register(String mobile, String setPsdEtSure, String sms_code);

        void modifyPsd(String setPsdEtSure, String oldPsd);

        void forgetPsd(String mobile, String setPsdEtSure,String sms_code,String sms_type);

        void thirdAppLogin(int i, String mobile, String setPsdEtSure, String uid);
        //注册成功之后将协议传送到后台
        void addUserAppAgreementRecord(String clientVersion, String operateSystem, String sceneNo,String token);
    }

    interface ISetPsdView extends IBaseContact.IBaseView{

        void setPsdSuccess(IbaseBean response);

        void setPsdFail(IbaseBean message);

        void registerSuccess(UserBean response);

        void registerFail(String msg);

        void modifyPsdSuccess();

        void modifyPsdFail(String message);

        void forgetPsdSucc();

        void forgetPsdFail();

        void thirdAppLoginSucc();

        void thirdAppLoginFail();

        void addUserAppAgreementRecordSucc(sz.szsmk.citizencard.model.network.bean.response.BaseBean baseBean);

        void addUserAppAgreementRecordFail();
    }


}
